home *** CD-ROM | disk | FTP | other *** search
- /makepattern defed /xt xdf
- xt not {/yt save def} if
-
- /PATmp{
- exch
- dup length 3 add dict copy
- begin
- currentdict /Multi known not {/Multi 1 def} if
- Multi 1 ne {
- /UserProc /PaintProc load def
- /PaintProc {
- begin
- 0 1 Multi 1 sub {
- PaintColors 1 index get PATsc
- PaintData exch get
- gsave currentdict UserProc grestore
- }for
- end
- } bdf
- } if
- currentdict
- end
- exch makepattern
- }bdf
-
-
- /PATsp{
- dup /PaintType get 2 eq
- {
- exch aload length 4 eq
- {5 -1 roll}
- {spots exch get 0 4 getinterval aload pop
- 4 {4 index mul 4 1 roll} repeat 6 -2 roll pop}ifelse
- [/Pattern /DeviceCMYK] setcolorspace
- }if
- setpattern
- }bdf
- /PATfill{{{eofill}fp}{{fill}fp}ifelse}bdf
- /PATprestroke{}bdf
- /PATstroke{stroke}bdf
- xt not {yt restore} if
- xt {/yt save def} if
-
- /PATtcalc{
- gsave
- exch concat
- matrix currentmatrix exch
- 2 ne {
- dup 4 get exch dup 5 get exch
- XStep 0 dtransform round exch round exch
- XStep div exch XStep div exch
- 0 YStep dtransform round exch round exch
- YStep div exch YStep div exch
- 7 -3 roll astore
- } if
- grestore
- }bdf
-
- /PATmp{
- exch
- dup
- length 8 add
- dict copy
- begin
- TilingType PATtcalc
- /PATcurrentMtx xdf
- currentdict /Multi known not {/Multi 1 def} if
- /FontType 3 def
- /Encoding 256 array def
- 3 string 0 1 255
- {Encoding exch dup 3 index cvs cvn put} for pop
- /FontMatrix matrix def
- /FontBBox BBox def
- /BuildChar {
- mark 3 1 roll
- exch begin
- Multi 1 ne {PaintData exch get}{pop}ifelse
- PaintType 2 eq Multi 1 ne or
- {XStep 0 FontBBox aload pop setcachedevice}
- {XStep 0 setcharwidth}ifelse
- currentdict
- /PaintProc load
- end
- gsave exec grestore
- cleartomark
- }bdf
- currentdict
- end
- /foo exch
- definefont
- }bdf
-
-
- /PATsp{
- /PATcurrent xdf
- PATcurrent /PaintType get 2 eq
- {/PATcolor xdf}if
- }bdf
-
- /PATpcalc{
- PATcurrent begin
- gsave
- PATcurrentMtx setmatrix
- BBox aload pop pop pop translate
- pathbbox
- grestore
- YStep div ceiling 4 1 roll
- XStep div ceiling 4 1 roll
- YStep div floor 4 1 roll
- XStep div floor 4 1 roll
- 2 index sub cvi abs
- exch 3 index sub cvi abs exch
- 4 2 roll
- YStep mul exch XStep mul exch
- end
- }bdf
-
-
- /PATfill{
- {{eoclip}fp}{{clip}fp}ifelse
- PATpcalc
- newpath
- PATcurrent dup begin
- setfont
- PATcurrentMtx setmatrix
- PaintType 2 eq {PATcolor vc} if
- 3 index string
- 0 1 Multi 1 sub {
- 3 index 3 index moveto
- Multi 1 ne {dup PaintColors exch get vc} if
- 0 1 7 index 1 sub {
- 2 index
- exch
- 2 index put
- } for
- pop
- 3 index
- {
- currentpoint
- 2 index show
- YStep add moveto
- }repeat
- }for
- 5 {pop} repeat
- end
- }bdf
- /PATprestroke{{strokepath}fp}bdf
- /PATstroke{false PATfill}bdf
- xt {yt restore} if